home *** CD-ROM | disk | FTP | other *** search
/ Digital Beauty EX: Matsuoka / Digital Beauty EX: Matsuoka.iso / pc / r3_demo / shade_r3 / pro_demo / scripts / spheres.vbs < prev   
Encoding:
Text File  |  1999-04-02  |  2.3 KB  |  86 lines

  1. '//Shade Sample Script
  2. '//
  3. '//Copyright (C) 1998 ExpressionTools, Inc.
  4. '//
  5. '//----------------------------------------------------------------------------------------------------------------
  6. Dim OK
  7. OK = XShade.ShowMessageBox("このサンプルは螺旋状に球を配置するスクリプトです。", true)
  8. If OK = True Then
  9.     Call PutSpheres()
  10. End If
  11.  
  12. '//実行前のメッセージを表示させない場合は、上の記述を削除して
  13. '//この下の関数の先頭についているコメント記号「'//」を消してください。
  14.  
  15. '//Call PutSpheres()
  16.  
  17. Dim SPHERE_R, ROTATE_S, NUMBER_T, CAN_EXE1
  18. '//****** Main Function ******
  19. Function PutSpheres()
  20.     Call Dialog1()
  21.     If CAN_EXE1 = True Then
  22.     
  23.         XShade.Message "実行中..."
  24.  
  25.         '//画面の更新を禁止する。
  26.         XShade.InhibitUpdate()
  27.  
  28.         XShade.CreatePart()
  29.  
  30.         '//球を配置していく。
  31.         For i = 0 To NUMBER_T - 1
  32.             XShade.CreateSphere Cos(DegToRad(ROTATE_S)*i)*SPHERE_R*i, SPHERE_R*i, Sin(DegToRad(ROTATE_S)*i)*SPHERE_R*i, SPHERE_R
  33.         Next
  34.  
  35.         XShade.Message "終了"
  36.  
  37.         '//画面の更新をする。
  38.         XShade.AllowUpdate()
  39.  
  40.         XShade.SelectParent(1)
  41.     Else
  42.         Exit Function
  43.     End If
  44. End Function
  45.  
  46. '//ダイアログを表示する。
  47. '//****** Dialog Object1 ******
  48. Function Dialog1()
  49.     SPHERE_R = 10.0
  50.     ROTATE_S = 15
  51.     NUMBER_T = 50
  52.     CAN_EXE1 = true
  53.     
  54.     XShade.BeginDialog(0) '//ダイアログのID番号が0以外の場合は初期設定ファイルにプロパティ値が保存される。
  55.  
  56.  
  57.     '//入力ダイアログボックス内にダイアログアイテムを追加する。
  58.     XShade.AppendFloatDialogItem "球の半径" '//識別番号は 0
  59.     XShade.AppendIntDialogItem "角度(度)" '//識別番号は 1
  60.     XShade.AppendIntDialogItem "個数(個)" '//識別番号は 2
  61.  
  62.  
  63.     '//それぞれのダイアログアイテムのプロパティを設定する。
  64.     XShade.FloatPropertyValue(0) = SPHERE_R '//実数入力ダイアログアイテムの初期設定
  65.     XShade.IntPropertyValue(1) = ROTATE_S '//整数入力ダイアログアイテムの初期設定 
  66.     XShade.IntPropertyValue(2) = NUMBER_T '//整数入力ダイアログアイテムの初期設定
  67.     
  68.     Dim ok
  69.     ok = XShade.AskDialog() '//ダイアログボックス内のOK/Cancelボタンが押されたかを識別する。
  70.     If ok Then
  71.         SPHERE_R = XShade.FloatPropertyValue(0)
  72.         ROTATE_S = XShade.IntPropertyValue(1)
  73.         NUMBER_T = XShade.IntPropertyValue(2)
  74.         CAN_EXE1 = true
  75.     Else
  76.         CAN_EXE1 = False
  77.     End If
  78.     XShade.EndDialog() '//ダイアログを終了する。
  79. End Function
  80.  
  81. '//角度をラジアンにする。
  82. '//****** Degree To Radian ******
  83. Function DegToRad(degree)
  84.     DegToRad = degree*(3.14/180)
  85. End Function
  86.